/**
 * async
 *  ● async 关键字用于修饰函数
 *  ● 被 async 修饰的函数是异步函数
 *  ● 被 async 修饰的函数返回一个 Promise
 *  ● 如果函数通过 return 语句返回其他类型的数据，会被自动包装成 Promise
 */
async function fn() {
  return new Promise((resolve, reject) => {
    resolve('Hello world!')
  })
}
fn().then(res => {
  console.log(res) // Hello world!
})

async function fn2() {
  return 'Hello world! 2'
}
fn2().then(res => {
  console.log(res) // Hello world! 2
})
